﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using CNCSoft.EData;
using System.Data.SqlClient;

using System.Threading;
using System.Globalization;

using Common;

namespace CNCSoft.ErpApps.TMS.Accountant
{
    public partial class CapNhatSoDu : Form
    {
        public CapNhatSoDu()
        {
            // Sets the UI culture to VietNamese (VietNam) / English
            if (GlobalVariable.WSInfo.Language == "Tiếng Việt")
                Thread.CurrentThread.CurrentUICulture = new CultureInfo("vi-VN");
            else if (GlobalVariable.WSInfo.Language == "English")
                Thread.CurrentThread.CurrentUICulture = new CultureInfo("en");

            InitializeComponent();
        }

        private void CapNhatSoDu_Load(object sender, EventArgs e)
        {
            toolStripStatusLabel1.Text = "";
        }

        private void cmdOK_Click(object sender, EventArgs e)
        {
            try
            {
                SqlConnection TMSConn = new SqlConnection(GlobalVariable.WSInfo.ConnectionString);

                SqlCommand salesCMD = new SqlCommand("sp_CapNhatSoDu", TMSConn);
                salesCMD.CommandType = CommandType.StoredProcedure;

                TMSConn.Open();
                SqlParameter myParm = salesCMD.Parameters.Add("@pNgay", SqlDbType.DateTime);

                toolStripStatusLabel1.Text = "Đã cập nhật số dư: ";
                for (int i = 0; i <= (DateTime.Now - txtNgayCapNhatSoDu.getDateValue()).Days / 30 ; i++)
                {
                    
                    myParm.Value = txtNgayCapNhatSoDu.getDateValue().AddMonths(i);

                    //TMSConn.Open();

                    SqlDataReader myReader = salesCMD.ExecuteReader();


                    myReader.Close();
                    toolStripStatusLabel1.Text += "Tháng " + txtNgayCapNhatSoDu.getDateValue().AddMonths(i).Month + " năm " + txtNgayCapNhatSoDu.getDateValue().AddMonths(i).Year + ", " ;
                    
                }

                TMSConn.Close();

                MessageBox.Show("Đã cập nhật thành công số dư đầu tháng " + txtNgayCapNhatSoDu.getDateValue().Month.ToString("00") + " năm " + txtNgayCapNhatSoDu.getDateValue().Year.ToString("0000") + " đến nay.",
                                     "Cap nhat so du", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Cap nhat so du - error");
            }

        }

        private void txtNgayCapNhatSoDu_TextChanged(object sender, EventArgs e)
        {
            
        }

        private void txtNgayCapNhatSoDu_Validated(object sender, EventArgs e)
        {
            lblDienGiai.Text = "Cập nhật số dư đầu tháng " + txtNgayCapNhatSoDu.getDateValue().Month.ToString("00") + " năm " + txtNgayCapNhatSoDu.getDateValue().Year.ToString("0000") + 
                                " Đến nay" ;
        }

        private void CapNhatSoDu_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                this.SelectNextControl(this.ActiveControl, true, true, true, true);
            }
            else if (e.KeyCode == Keys.Escape)
            {
                this.SelectNextControl(this.ActiveControl, true, false, true, true);
            }
        }
    }
}
